
/* File di Riempimento Contenuti nalla sezione "Lezione" */



/* Variabili Globali */

var _debug= true;
var g_imgCategoriaAvanz ;
var g_coloreCategoria ;
var g_percentualeCorso ;
var g_nextLezione ;
var g_prevLezione;
var g_currLezione;


var g_idLezione ;
var g_idNextLezione ;
var g_idPrevLezione ;

var g_idLezione_prox;
var g_idNextLezione_prox ;
var g_idPrevLezione_prox ;

/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE ALTEZZA PAGINA LEZIONE

/***************************************************************************************************************************/
/***************************************************************************************************************************/

//Calcola l'altezza del body e la applica al contenitore della lezione
 function calculateHeight() {
     var h_body = $( document ).height();
    // $(".lesson_content").css("height",h_body);
    $( ".lesson_container" ).css( "height",h_body );
} /* fine calculateHeight */      
        






/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    SET E GET NUMERO ID CORSO

/***************************************************************************************************************************/
/***************************************************************************************************************************/


 function setCorso( p_numero ) {
     $( "#idCorso" ).val( p_numero );
}      

function getCorso() {
    return $( "#idCorso" ).val();
}





/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    CALCOLA L'URL DELLA PAGINA CORRENTE

/***************************************************************************************************************************/
/***************************************************************************************************************************/

function calculateURL () {
    var href = $( location ).attr( 'href' );
    return href;
}




/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE RIEMPIMENTO CONTENUTI PAGINA LEZIONE

/***************************************************************************************************************************/
/***************************************************************************************************************************/


//GESTIONE CAMBIO ICONA AL CLICK SUL PULSANTE COMPLETATO/NON COMPLETATO
function completaLez() {
    var isCompletata;
    
    /* Stato non completato */
    if ($( 'a.stato' ).hasClass( "nonCompletato" )){
        isCompletata = true ;
        $( 'a.stato' ).removeClass( "nonCompletato" ).addClass( "completato" );
        $( '.completato' ).css( "display","block" );
        $( 'a.stato .message' ).html( "SEGNA IL CORSO <br /> COME NON <br /> COMPLETATO" );
    }
    
    /* Stato completato */
    else if ($( 'a.stato' ).hasClass( "completato" )){
        isCompletata = false ;
        $( 'a.stato' ).removeClass( "completato" ).addClass( "nonCompletato" );
        $( 'a.stato .message' ).html( "SEGNA IL CORSO <br />COME COMPLETATO" );
    }
    // $.get('${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/ajax/completaLezione',{utente:<c:out value="${idUtente}"/>, corso:<c:out value="${idCorso}"/>, lezione:idLezione, complete:isCompletata},function(responseText) {     });
} /* end completaLez*/



//RIEMPIE LA PAGINA DI AVANZAMENTO LEZIONE
function getContenutiProssimaLezione ( p_path ){
    
    var pathRiempimentoLezione = p_path ; //"json/getLezioneInfo_3_1.json";    
    
    $.ajax({
        
        url: pathRiempimentoLezione,
        dataType: "json",
        success: function( dataJson ) {
            //console.log( data ); //visualizzo il contenuto del Json

            //creazione variabili
            var posizioneLezione     =  dataJson.lezione.posizione;
            var titoloLezione        =  dataJson.lezione.titolo;
            var titoloLezione        =  dataJson.lezione.titolo;
            var idLezione            =  dataJson.lezione.idLezione;
            
            g_idLezione_prox         =  idLezione;
            
            g_idNextLezione_prox     =  dataJson.lezione.next;
            g_idPrevLezione_prox     =  dataJson.lezione.previous;
            
            $( ".container_passaggio" ).find( ".right_passaggio .colore_perc" ).html( posizioneLezione );
            $( ".container_passaggio" ).find( ".right_passaggio .titolo a" ).html( titoloLezione );
            
            
        }, //end success
                    
            error: function() {
             console.log( "non ho caricato lezione.json" );
            } //end error

    });

}



//RIEMPIE LA PAGINA DI FRUIZIONE LEZIONE
function riempiContenutiLezione ( p_path ){
    
    var pathRiempimentoLezione = p_path ; //"json/getLezioneInfo_3_1.json";    
    
    $.ajax({
        
        url: pathRiempimentoLezione,
        dataType: "json",
        success: function( dataJson ) {
            //console.log( data ); //visualizzo il contenuto del Json

            //creazione variabili
            var nomeCategoria        =  dataJson.categoria.nome;
            var iconaCategoria       =  dataJson.categoria.icona;
            var coloreCategoria      =  dataJson.categoria.colore;
            var immagineAvanzamento  =  dataJson.categoria.immagineAvanzamento;   
            
            var posizioneSezione     =  dataJson.sezione.posizione;
            var titoloSezione        =  dataJson.sezione.titolo;
            
            var idLezione            =  dataJson.lezione.idLezione;
            var posizioneLezione     =  dataJson.lezione.posizione;
            var titoloLezione        =  dataJson.lezione.titolo;
            var descrizioneLezione   =  dataJson.lezione.descrizione;
            var urlVideoLezione      =  dataJson.lezione.core.url;
            var nextLezione          =  dataJson.lezione.next;
            var prevLezione          =  dataJson.lezione.previous;
            
            var completatoLezione    =  dataJson.completata;
            
            var linkPrec             =  "";
            var linkSucc             =  "";
            
            
            // set variabili globali
            g_imgCategoriaAvanz        =   immagineAvanzamento;
            g_coloreCategoria          =   coloreCategoria;
            g_nextLezione              =   nextLezione;
            g_prevLezione              =   prevLezione;
            g_idLezione                =   idLezione;
            g_currLezione              =   posizioneLezione;
            
            if ( _debug ) {
                console.log( "idCorso --> ", getCorso() );
                console.log( "idLezione --> ", idLezione );
                console.log( "iconaCategoria -->", g_imgCategoriaAvanz );
                console.log( "coloreCategoria -->", g_coloreCategoria );
            }
            
            /* inserisce l'icona dello stato della lezione */
            if ( completatoLezione ) {
                $( '#stato_lezione a.stato' ).addClass( "completato" );
                $( '#stato_lezione a.stato.completato' ).css( "display" , "block" );
            } else {
                 $( '#stato_lezione a.stato' ).addClass( "nonCompletato" );
            }
          
            /* inserisce i link alle lezioni successive e precedenti se esistenti */
            if( prevLezione != null  ) {
                
                $( ".less_navig .left" ).css( "display" , "block" );
                //linkPrec = ""+calculateURL()+"/ajax/getLezioneInfo.ajax?corso="+prevLezione+"&posizione="+posizioneLezione ;
                //linkPrec = '${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/lezione#'+dataJson.previous; //costruisce il link alla lezione precedente
            }
            else {
                $( ".less_navig .left" ).css( "display" , "none" );
            }

            if( nextLezione != null ) {
               $( ".less_navig .right" ).css( "display" , "block" );
               //linkSucc = ""+calculateURL()+"/ajax/getLezioneInfo.ajax?corso="+getCorso()+"&posizione="+posizioneLezione ;
                // http://academy.corriere.it/i-miei-corsi/cucina/cucinare-in-7-passi/ajax/getLezioneInfo.ajax?corso=3&posizione=1
                //linkSucc = '${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/lezione#'+dataJson.next; //costruisce il link alla lezione successiva
            }
            else {
                $( ".less_navig .right" ).css( "display" , "none" );
            }


            // riempimento dinamico degli elementi dell'html
            
            /*begin lato sinistro*/
            var myDivContainer = $( ".lesson_content .sez-left" );
            /*inserimento del div description*/
            myDivContainer.find( ".gear" ).css( "background-image",'url("' + iconaCategoria + '")');
            myDivContainer.find( ".description .num" ).html( "#" + posizioneSezione );
            myDivContainer.find( ".description .info").html( titoloSezione );
            myDivContainer.find( ".description .less_num" ).html( "Lezione" + posizioneLezione + " / " );
            myDivContainer.find( ".description .less_num" ).css( "color", coloreCategoria );
            myDivContainer.find( ".description .less_name" ).html( titoloLezione );
            myDivContainer.find( ".description .introduction p" ).html( descrizioneLezione );

            /*inserimento del div player_section*/
            myDivContainer.find( ".player_section .player video" ).attr( "poster", "http://video-js.zencoder.com/oceans-clip.png" );
            myDivContainer.find( ".player_section .player video" ).html( "<source src="+urlVideoLezione+" type='video/mp4' />" );

            /*inserimento del div less_navig*/
            if( linkPrec !== "" ){ //se esiste la lezione precedente inserisco la grafica della freccia sinistra
               myDivContainer.find( ".left a" ).attr( "href", linkPrec );
            }
            if( linkSucc !== "" ){ //se esiste la lezione precedente inserisco la grafica della freccia sinistra
               myDivContainer.find( ".right a" ).attr( "href", linkSucc );
            }
            /*end lato sinistro*/
            
            

            }, //end success
                    
            error: function() {
             console.log( "non ho caricato lezione.json" );
            } //end error

    });

} /* END GESTIONE RIEMPIMENTO CONTENUTI PAGINA LEZIONE */



/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE RIEMPIMENTO TAB MATERIALI

/***************************************************************************************************************************/
/***************************************************************************************************************************/

function riempiContenutiMateriali(){
    
    var pathRiempimentoMateriali = "json/materiale.json";    
    
    $.ajax({
        
        url: pathRiempimentoMateriali,
        dataType: "json",
        success: function( dataJson ) {
                /* Begin riempimento lista Allegati */
                var myDivMaterialiAllegati = $( ".sez-right ul.lista_allegati li.allegato:last-child" );

                sizeDataJsonAllegati = ( dataJson.files.length );

                for( i = 0 ; i < sizeDataJsonAllegati ; i++ ){

                //    var descrizioneAllegati  =  dataJson.files[i].descrizione;
                    var titoloAllegati       =  dataJson.files[i].text;
                    var nomeAllegati         =  dataJson.files[i].nome;
                    var pathAllegati         =  dataJson.files[i].url;
                    var classIcon            =  dataJson.files[i].classIcon;
                    var classIconGeneric     =  dataJson.files[i].classIconGeneric;

                    if (titoloAllegati !== null) {
                        myDivMaterialiAllegati.find( ".description .title" ).html( titoloAllegati );
                    }
                    else {
                        myDivMaterialiAllegati.find( ".description .title" ).html( nomeAllegati );
                    }

                 //   myDivMaterialiAllegati.find( ".description .subtitle" ).html( descrizioneAllegati );
                    myDivMaterialiAllegati.find ( "a" ).attr( "href", pathAllegati );
                    myDivMaterialiAllegati.find ( "a" ).attr( "title", nomeAllegati );

                    if (classIcon !== null) {
                            myDivMaterialiAllegati.find ( "h5" ).attr("class", classIconGeneric + " " + classIcon);
                    }

                    if( i !== ( sizeDataJsonAllegati - 1 ) ) {
                        $( ".sez-right ul.lista_allegati li.allegato:first-child" ).clone().appendTo( "ul.lista_allegati" );

                    }	
                } //end for
                $( ".sez-right ul.lista_allegati li.allegato:first-child" ).clone().appendTo( "ul.lista_allegati" );
                $( ".sez-right ul.lista_allegati li.allegato:first-child" ).remove();
                /* end riempimento lista Allegati */



                /* Begin riempimento lista Link */
                var myDivMaterialiLink = $( ".sez-right ul.lista_link_risorse li.link_risorsa:last-child" );

                sizeDataJsonLink = ( dataJson.links.length );

                for( i = 0 ; i < sizeDataJsonLink ; i++ ){

                    var linkNome             =  dataJson.links[i].text; 
                    var linkCompletePath     =  dataJson.links[i].url; 

                    myDivMaterialiLink.find( ".description .title" ).html( linkNome );
                    myDivMaterialiLink.find ( "a" ).attr( "href", linkCompletePath );
                    myDivMaterialiLink.find ( "a" ).attr( "title", linkNome );
                    myDivMaterialiLink.find ( "a" ).html( linkCompletePath );

                    if( i !== ( sizeDataJsonLink - 1 ) ) {
                        $( ".sez-right ul.lista_link_risorse li.link_risorsa:first-child" ).clone().appendTo( "ul.lista_link_risorse" );
                    }	
                } //end for
                $( ".sez-right ul.lista_link_risorse li.link_risorsa:first-child" ).clone().appendTo( "ul.lista_link_risorse" );
                $( ".sez-right ul.lista_link_risorse li.link_risorsa:first-child" ).remove();
                /* End riempimento lista link*/

                /*end lato destro materiali*/
            }, //end success
                    
            error: function() {
             console.log( "non ho caricato lezione.json" );
            } //end error

    });
            
} /* END RIEMPIMENTO TAB DEI MATERIALI */










/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE RIEMPIMENTO TAB DOMANDE

/***************************************************************************************************************************/
/***************************************************************************************************************************/


//AGGIUNTA DI UNA NUOVA DOMANDA

function fmy_addDomanda(){
    
    $( ".box_domande .domanda_inviata" ).remove();
    
   // inp_content = $( ".box_domande .search_field" ).val().length ;
    
  //  console.log( "inp_content", inp_content);
    
        
        $( ".box_domande #domanda_invia_tab" ).click(function(event) { 
          
            if ( $( ".box_domande .search_field" ).val().length > 0 ) {
            
                var pathAddDomanda= "json/success.txt";

                 $.ajax({
                      url: pathAddDomanda,
                      dataType: "text",
                      success: function( responseText ) {
                      //$.get('${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/ajax/aggiungiDomanda',{pubblicatore:<c:out value="${idPubblicatore}"/>, utente:<c:out value="${idUtente}"/>, corso:<c:out value="${idCorso}"/>, lezione:idLezione, domanda:testoDomanda},

                        // Nel caso in cui inserissi una nuova domanda, ripulisco il div 'domanda_inviata'
                        $( ".domanda_inviata" ).remove(); 

                        //var testoDomanda= $('#testoDomanda').val();
                        if( responseText === 'SUCCESS' ){
                            $( '.lista_domande' ).prepend( "<div class=\"domanda_inviata\"> La domanda è stata inserita con successo! In attesa di risposta...</div> " );  
                        } 
                        else {
                            $( '.lista_domande' ).prepend( "<div class=\"domanda_inviata\"> Attenzione si è verificato un problema nell'inserimento della domanda </div> " );   
                        }
                        $( '#testoDomanda' ).val('');
                    }    
                });
            }
            
            
            
        }); 
     
}
                 
 

//RIEMPIE LA TAB DELLE DOMANDE
function riempiTabDomande( p_pathDomande ){
    
    var pathRiempimentoDomande = p_pathDomande ;
    
    $.ajax({
        url: pathRiempimentoDomande,
        dataType: "json",
        success: function( dataJson ) {
            //console.log( dataJson );

            // riempimento dinamico degli elementi dell'html
            var lastDomanda = $( ".sez-right .box_domande ul.lista_domande li.domanda:last-child" );
            
            sizeDataJson = ( dataJson.length );
            
            //  console.log(dataJson[i].nomeAutoreDomanda);
            //  console.log(sizeDataJson);
            
            for( i = 0 ; i < sizeDataJson ; i++ ){
            
                //creazione variabili
                var nomeAutoreDomanda           =   dataJson[i].autoreDomanda.nickName;
                var dataPubblicazioneRisposta   =   dataJson[i].dataRispostaFormatted;
                var testoDomanda                =   dataJson[i].testoDomanda;
                var testoRisposta               =   dataJson[i].testoRisposta;
            
                lastDomanda.addClass( "domanda_json" );
                /*inserimento dei dati negli li di lista_domande */
                lastDomanda.find( ".question .title span.autore" ).html( nomeAutoreDomanda + " chiede");
                lastDomanda.find( ".question .title span.date" ).html( dataPubblicazioneRisposta );
                lastDomanda.find( ".question p" ).html( testoDomanda );
                lastDomanda.find( ".answer p" ).html( testoRisposta );
            
                if( i !== ( sizeDataJson - 1 ) ) {
                    $( "ul.lista_domande li.domanda:first-child" ).clone().appendTo( "ul.lista_domande" );
				}	
            } //end for
            $( ".sez-right .box_domande ul.lista_domande li.domanda:first-child" ).clone().appendTo( "ul.lista_domande" );
            $( ".sez-right .box_domande ul.lista_domande li.domanda:first-child" ).remove();
            
        },//end success
        
        error: function() {
         console.log( "non ho caricato domande.json" );
        } //end error
        
    });
} /* end riempimento tab domande*/




// RESET TAB DELLE DOMANDE
function fmy_resetTabDomande(){
    
    var list = $( ".sez-right .box_domande ul.lista_domande" );
    list.each(function () {
      $(this).find( "li" ).remove();
      
      
      strToAppend = "<li ";
      strToAppend += "class=\"domanda\" ";
      strToAppend += "\" >";
      
      strToAppend +=  "<div ";
      strToAppend += "class=\"question\" ";
      strToAppend += "\" >";
      
      strToAppend +=  "<div ";
      strToAppend += "class=\"title\" ";
      strToAppend += "\" >";
      strToAppend +=  "<span ";
      strToAppend += "class=\"autore\" ";
      strToAppend += "\" >";
      strToAppend += " </span>";
      strToAppend +=  "<span ";
      strToAppend += "class=\"date right\" ";
      strToAppend += "\" >";
      strToAppend += " </span>";
      strToAppend += "</div>";
      strToAppend += "<p> </p>";
      strToAppend += "</div>";  
        
      strToAppend +=  "<div ";
      strToAppend += "class=\"answer\" ";
      strToAppend += "\" >"; 
      
      strToAppend +=  "<div class=\"title\">Riposta dell'autore</div> ";
      strToAppend += "<p> </p>";
      strToAppend += "</div>";  
      strToAppend += "<hr />"; 
      strToAppend += "</li>"; 
      
      $( ".sez-right .box_domande ul.lista_domande" ).append( strToAppend );
      
    });


}






/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE RIEMPIMENTO TAB NOTE

/***************************************************************************************************************************/
/***************************************************************************************************************************/


//ELIMINA UNA NOTA
 function fmy_deleteNota( idUtente, data, idLezione ) {
     
    var pathEliminaNote = "json/success.txt";
 
    $.ajax({
        url: pathEliminaNote,
        dataType: "text",
        success: function( responseText ) {
            //$.get('${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/ajax/eliminaNota',{utente:idUtente, data:data, lezione:idLezione},
            if( responseText==='SUCCESS' ){
              console.log( "nota eliminata" );
            $( '#riquadroNota_'+idUtente + '_' + data + '_' +idLezione ).remove();   
            } else {
             $( '#notatext' ).prepend( "Si è verificato un errore" );
            }
        }
    });

 }


//AGGIUNGE UNA NOTA
function fmy_addNota() {
        $( '#submitNota' ).click(function(event) {  

        // da vedere con valeria
        //    $.ajax({
        //        url: pathAddNota,
        //        dataType: "json",
        //        success: function(dataJson) {
        //        $.getJSON('${contextPath}/i-miei-corsi/${categoriaNome}/${corsoNome}/ajax/aggiungiNota',{utente:<c:out value="${idUtente}"/>, corso:<c:out value="${idCorso}"/>, lezione:idLezione, nota:testoNota},function(nota) { 
        //        $('ul.lista_note').prepend(getDatiNota(dataJson));  
        //        $('#testoNota').val('');
        //        }
        //    });

        var testo_nota = $( "#testoNota" ).val();           /* inserisco nella variabile il contenuto della textarea */

        if ( testo_nota.length > 0) { 
            
            var pathAddNota = "json/nota_add.json";

            $.ajax({
                url: pathAddNota,
                dataType: "json",
                success: function(dataJson) {



                    var numNote = $( "ul.lista_note").children().length;
                     if ( numNote > 0) {
                         var commentoUtente = $( "ul.lista_note li.nota:first-child" ).clone().prependTo( "ul.lista_note" );   /* clono l'ultima nota */
                         commentoUtente.find( ".text p" ).html(testo_nota);  /* riempio il campo p della nota insetrita*/
                     }
                     //caso in cui tutte le note sono state cancellate e ne voglio aggiungere una nuova
                     else {
                         strToAppend  = "<li class=\"nota\" id=\"riquadroNota\" >";
                         strToAppend += "<div class=\"clock left\">";
                         strToAppend += "<img src=\"/libs/css/assets/lesson_clock_icon.png\" alt=\"\">";
                         strToAppend += "<div class=\"time\"></div>";
                         strToAppend += "</div>";
                         strToAppend += "<div class=\"text left\">";
                         strToAppend += "<p> </p>";
                         strToAppend += "<a href=\"#\" title=\"Elimina nota\" class=\"delete\"></a>";
                         strToAppend += "</div>";
                         strToAppend += "</li>"; 

                         $( ".sez-right .my_notes ul.lista_note" ).append( strToAppend );

                         $( "ul.lista_note li.nota:first-child .text p" ).html(testo_nota);  /* riempio il campo p della nota insetrita*/
                     }


                }, /* end success */
                error: function(){

                    console.log("non connesso - nota_add.json non caricato");

                } /* end error */
            });
        
        } /*end if*/
   }); /*end aggiunta nota*/
}



//RIEMPIE LA TAB DELLE NOTE
function riempiTabNote( p_pathNote ){
    
    var pathRiempimentoNote = p_pathNote;
    
    $.ajax({
        url: pathRiempimentoNote,
        dataType: "json",
        success: function( dataJson ) {
            //console.log(dataJson);

            // riempimento dinamico degli elementi dell'html
            var lastNota = $( ".sez-right .my_notes ul.lista_note li.nota:last-child" );

            sizeDataJson = ( dataJson.length );

            for( i = 0 ; i < sizeDataJson ; i++ ){

                //creazione variabili
            
                var testoNota                  =   dataJson[i].testoNota;
                var idUtente                   =   dataJson[i].idUtente;
                var dataFormatted              =   dataJson[i].dataFormatted; 
                var data                       =   dataJson[i].data; 
                var idLezione                  =   dataJson[i].idLezione;

                /*inserimento dei dati negli li di lista_note */
                lastNota.find( ".clock .time" ).html( dataFormatted );
                lastNota.find( ".text p" ).html( testoNota );
                lastNota.attr( "id","riquadroNota_" + idUtente + '_' + data + '_' + idLezione );
                lastNota.find( ".delete" ).attr("onclick", "fmy_deleteNota("+ idUtente +", " + data + ", " + idLezione + ")");

                if( i !== ( sizeDataJson - 1 ) ) {
                    $( "ul.lista_note li.nota:first-child" ).clone().appendTo( "ul.lista_note" );
                }	
            } //end for
            $( "ul.lista_note li.nota:first-child" ).clone().appendTo( "ul.lista_note" );
            $( "ul.lista_note li.nota:first-child" ).remove();

        },//end success

        error: function() {
         console.log( "non ho caricato note.json" );
        } //end error

    });//end ajax

}/*end riempimento tab note*/



// RESET TAB DELLE DOMANDE
function fmy_resetTabNote(){
    
    var list = $( ".sez-right .my_notes ul.lista_note" );
   
    list.each(function () {
      $(this).find( "li" ).remove();
      
      strToAppend  = "<li class=\"nota\" id=\"riquadroNota\" >";
      strToAppend += "<div class=\"clock left\">";
      strToAppend += "<img src=\"/libs/css/assets/lesson_clock_icon.png\" alt=\"\">";
      strToAppend += "<div class=\"time\"></div>";
      strToAppend += "</div>";
      strToAppend += "<div class=\"text left\">";
      strToAppend += "<p> </p>";
      strToAppend += "<a href=\"#\" title=\"Elimina nota\" class=\"delete\"></a>";
      strToAppend += "</div>";
      strToAppend += "</li>"; 
      
      $( ".sez-right .my_notes ul.lista_note" ).append( strToAppend );
         
      
    });


}




/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    GESTIONE TABS IN FRUIZIONE LEZIONE

/***************************************************************************************************************************/
/***************************************************************************************************************************/


/*---- BEGIN ANIMAZIONE TAB IN FRUIZIONE LEZIONE ----*/
function animateTabsLesson() {
    $( "#tabs_lesson" ).tabs();
}
/*---- END ANIMAZIONE TAB IN FRUIZIONE LEZIONE ----*/






/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    RESETTA LE TAB APRENDO LA PRIMA E CHIUDENDO LE ALTRE

/***************************************************************************************************************************/
/***************************************************************************************************************************/

function fmy_resetTab(){
 //   animateTabsLesson();
  //  $( "#tabs_lesson .ui-tabs-nav" ).find( "li.ui-state-default").removeClass( "ui-tabs-active ui-state-active" );
  //  $( "#tabs_lesson .ui-tabs-nav" ).find( "li.ui-state-default:first-child").addClass( "ui-tabs-active ui-state-active" );
  //  $( "#tabs_lesson .tabs_content" ).css( "display", "none" );
  //  $( "#tabs_lesson .tabs_content#tabs-1" ).css( "display", "block" );
   
    $("#tabs_lesson").tabs({
        activate: function(event, ui) {
            ui.newTab.animate({scrollTop:ui.newTab.offset().top}, 'slow');
        }
    });
    
}


/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    ANIMAZIONE SLIDING FRA UNA LEZIONE E L'ALTRA

/***************************************************************************************************************************/
/***************************************************************************************************************************/


function fmy_animateSlide () {
    
    var my_firstWidth  =  $( ".lesson_content" ).width();
	var my_secondWidth =  $( ".avanzamento" ).width();
    
    
    $( ".lesson_main" ).css({
        "width": my_firstWidth,
        "overflow": "hidden"
	});
    
    $(".lesson_container").css({
		"width" : ( my_firstWidth + my_secondWidth )+"px"
	});
    
    $( ".lesson_content" ).css({
        "width": my_firstWidth,
        "float":"left"
	});
    
    $( ".avanzamento" ).css({
        "width": my_firstWidth,
        "float":"left"
	});
	
	fmy_click_Lezione_Successiva ( my_firstWidth );
    fmy_click_Lezione_Precedente ( my_firstWidth );
    
    fmy_click_Lezione_SuccessivaDaAvanzamento ( my_firstWidth ) ;
    
	
    
}

var contatore_next = 0;

function fmy_click_Lezione_Successiva( p_myFirstWidth ) {

    // click sulla freccia e sul link "Lezione Successiva"
	$( ".less_navig .next.right" ).live( "click", function(){
		if( contatore_next == 0 ){
            
               console.log("next cnt 0");
			
            var clone_LessonContent = $( ".lesson_content" ).clone();
           
            //chiamata per il riempimento percentuale icona e animazione sliding
            var pathRiempiPercentuale = "json/getAvanzamento_"+getCorso()+"_"+g_idLezione+".json";
            
             $.ajax({
                url: pathRiempiPercentuale,
                dataType: "json",
                success: function( dataJson ) {
                    $( ".lesson_content" ).animate({
                        "marginLeft":"-"+p_myFirstWidth+"px"
                        }, 700, function(){
                            $( ".lesson_content" ).remove();
                            $( ".avanzamento" ).after( clone_LessonContent );
                            // calcolo dell'altezza dell'immagine con %
                            fmy_updateHeightPassaggio( g_percentualeCorso );
                           // $( "#bar_passaggio" ).slideDown("10000");
                    });	
                    
                    
                    //creazione variabili 
                    var percentuale    =    dataJson.percentuale;
                    var nLezTot        =    dataJson.numeroLezioniTotale;
                    var nLezCom        =    dataJson.numeroLezioniCompletate;
                    var completato     =    dataJson.completato;
                    
                    g_percentualeCorso =    percentuale;
                                        
                    
                    //riempimento pannello avanzamento lezione
                    $( ".container_passaggio" ).find( ".left_passaggio span" ).html( percentuale );
                    $( ".container_passaggio" ).find( ".center_passaggio span" ).html( percentuale );
                    $( ".container_passaggio" ).find( ".categoriaIcon" ).attr("src", g_imgCategoriaAvanz);
                    $( ".container_passaggio" ).find( ".center_passaggio .colore_perc" ).css( "background-color", g_coloreCategoria );
                    $( ".container_passaggio" ).find( ".right_passaggio .colore_perc" ).css( "color", g_coloreCategoria );
                    
                    $( ".less_navig .left" ).css( "display" , "block" );
                    
                    if( g_nextLezione != null ) {
                       $( ".less_navig .right" ).css( "display" , "block" );

                    }
                    else {
                        $( ".less_navig .right" ).css( "display" , "none" );
                    }

            
                    //dati inerenti la prossima lezione
                    getContenutiProssimaLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_nextLezione+".json" );
                    
                    
                    contatore_next = 1;
                    contatore_prev = 0;
               }, //end success
                    
                error: function() {
                 console.log( "non ho caricato il json" );
                } //end error

            });
        }
        else  
            if(contatore_next == 1) {
                
                console.log("next cnt 1");
                var clone_Avanzamento = $(".avanzamento").clone();
                $( ".avanzamento" ).animate({
                    "marginLeft":"-"+p_myFirstWidth+"px"
                }, 700, function(){
                    $( ".avanzamento" ).remove();
                    $( ".lesson_content" ).after( clone_Avanzamento );
                });	
                    
                    riempiContenutiLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_nextLezione+".json" );
                    fmy_resetTab();
                    fmy_resetTabDomande();
                    riempiTabDomande( "json/getDomande_"+getCorso()+"_"+g_idLezione_prox+".json" );
                    fmy_addDomanda();
                    fmy_resetTabNote();
                    fmy_addNota();
                    riempiTabNote( "json/getNote_"+getCorso()+"_"+g_idLezione_prox+".json" );
               
                contatore_next = 0;	
                contatore_prev = 1;
            }
	}); // end click sulla freccia e sul link "Lezione Successiva"
    
}






function fmy_click_Lezione_SuccessivaDaAvanzamento( p_myFirstWidth ) {

    // click sulla freccia e sul link "Lezione Successiva"
	$( ".fruizione_passaggio .titolo " ).live( "click", function(){
		if( contatore_next == 0 ){
            
               console.log("next cnt 0");
			
            var clone_LessonContent = $( ".lesson_content" ).clone();
           
            //chiamata per il riempimento percentuale icona e animazione sliding
            var pathRiempiPercentuale = "json/getAvanzamento_"+getCorso()+"_"+g_idLezione+".json";
            
             $.ajax({
                url: pathRiempiPercentuale,
                dataType: "json",
                success: function( dataJson ) {
                    $( ".lesson_content" ).animate({
                        "marginLeft":"-"+p_myFirstWidth+"px"
                        }, 700, function(){
                            $( ".lesson_content" ).remove();
                            $( ".avanzamento" ).after( clone_LessonContent );
                            // calcolo dell'altezza dell'immagine con %
                            fmy_updateHeightPassaggio( g_percentualeCorso );
                           // $( "#bar_passaggio" ).slideDown("10000");
                    });	
                    
                    
                    //creazione variabili 
                    var percentuale    =    dataJson.percentuale;
                    var nLezTot        =    dataJson.numeroLezioniTotale;
                    var nLezCom        =    dataJson.numeroLezioniCompletate;
                    var completato     =    dataJson.completato;
                    
                    g_percentualeCorso =    percentuale;
                                        
                    
                    //riempimento pannello avanzamento lezione
                    $( ".container_passaggio" ).find( ".left_passaggio span" ).html( percentuale );
                    $( ".container_passaggio" ).find( ".center_passaggio span" ).html( percentuale );
                    $( ".container_passaggio" ).find( ".categoriaIcon" ).attr("src", g_imgCategoriaAvanz);
                    $( ".container_passaggio" ).find( ".center_passaggio .colore_perc" ).css( "background-color", g_coloreCategoria );
                    $( ".container_passaggio" ).find( ".right_passaggio .colore_perc" ).css( "color", g_coloreCategoria );
                    
                    $( ".less_navig .left" ).css( "display" , "block" );
                    
                    if( g_nextLezione != null ) {
                       $( ".less_navig .right" ).css( "display" , "block" );

                    }
                    else {
                        $( ".less_navig .right" ).css( "display" , "none" );
                    }

            
                    //dati inerenti la prossima lezione
                    getContenutiProssimaLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_nextLezione+".json" );
                    
                    
                    contatore_next = 1;
                    contatore_prev = 0;
               }, //end success
                    
                error: function() {
                 console.log( "non ho caricato il json" );
                } //end error

            });
        }
        else  
            if(contatore_next == 1) {
                
                console.log("next cnt 1");
                var clone_Avanzamento = $(".avanzamento").clone();
                $( ".avanzamento" ).animate({
                    "marginLeft":"-"+p_myFirstWidth+"px"
                }, 700, function(){
                    $( ".avanzamento" ).remove();
                    $( ".lesson_content" ).after( clone_Avanzamento );
                });	
                    
                    riempiContenutiLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_nextLezione+".json" );
                    fmy_resetTab();
                    fmy_resetTabDomande();
                    riempiTabDomande( "json/getDomande_"+getCorso()+"_"+g_idLezione_prox+".json" );
                    fmy_addDomanda();
                    fmy_resetTabNote();
                    fmy_addNota();
                    riempiTabNote( "json/getNote_"+getCorso()+"_"+g_idLezione_prox+".json" );
               
                contatore_next = 0;	
                contatore_prev = 1;
            }
	}); // end click sulla freccia e sul link "Lezione Successiva"
    
}





// click sulla freccia e sul link "Lezione Precedente"
/*function fmy_click_Lezione_Precedente( p_myFirstWidth ) {
    
    $( ".avanzamento .less_navig .prev" ).live( "click", function(){
		
        $( ".avanzamento" ).animate({
            "marginLeft":p_myFirstWidth+"px"
        }, 700);	
        
     });   
    
    
    $( ".lesson_content .less_navig .prev" ).live( "click", function(){
		
        if ( g_prevLezione != null ){
            riempiContenutiLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_prevLezione+".json" );
            fmy_resetTab();
            fmy_resetTabDomande();
            riempiTabDomande( "json/getDomande_"+getCorso()+"_"+g_idLezione+".json" );
            fmy_resetTabNote();
            riempiTabNote( "json/getNote_"+getCorso()+"_"+g_idLezione+".json" );
        }
        else {
            
        }
        
     });   
    
}// end click sulla freccia e sul link "Lezione Precedente"

*/
var contatore_prev = 0;

function fmy_click_Lezione_Precedente( p_myFirstWidth ) {
    // click sulla freccia e sul link "Lezione Successiva"
	$( ".less_navig .left" ).live( "click", function(){
		if( contatore_prev == 1 ){
            
            console.log("prev cnt 1");
			
            /*
            var clone_LessonContent = $( ".lesson_content" ).clone();
           
            
            $( ".lesson_content" ).animate({
                "marginLeft":""+p_myFirstWidth+"px"
                }, 700, function(){
                    $( ".lesson_content" ).remove();
                    $( ".avanzamento" ).after( clone_LessonContent );
            });	
            */
           
            if ( g_prevLezione != null ){
                riempiContenutiLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_prevLezione+".json" );
                fmy_resetTab();
                fmy_resetTabDomande();
                riempiTabDomande( "json/getDomande_"+getCorso()+"_"+(g_idLezione-1)+".json" );
                fmy_addDomanda();
                fmy_resetTabNote();
                fmy_addNota();
                riempiTabNote( "json/getNote_"+getCorso()+"_"+(g_idLezione-1)+".json" );
            }
           

            contatore_prev = 1;
            contatore_next = 0;	
        }
        else  
            if(contatore_prev == 0) {
                
                console.log("prev cnt 0");
                var clone_Avanzamento = $(".avanzamento").clone();
                                
                $( ".avanzamento" ).animate({
                    "marginLeft":""+p_myFirstWidth+"px"
                }, 700, function(){
                    $( ".avanzamento" ).remove();
                    $( ".lesson_content" ).after( clone_Avanzamento );
                });	
                
                console.log("g_currLezione ::: ",g_currLezione);

                if ( g_prevLezione != null ){
                    riempiContenutiLezione( "json/getLezioneInfo_"+getCorso()+"_"+g_currLezione+".json" );
                    fmy_resetTab();
                    fmy_resetTabDomande();
                    riempiTabDomande( "json/getDomande_"+getCorso()+"_"+(g_idLezione)+".json" );
                    fmy_addDomanda();
                    fmy_resetTabNote();
                    fmy_addNota();
                    riempiTabNote( "json/getNote_"+getCorso()+"_"+(g_idLezione)+".json" );
                }
                else
                {
                    fmy_resetTab();                
                }
                
                contatore_prev = 1;	
                contatore_next = 0;	
            }
	}); // end click sulla freccia e sul link "Lezione Successiva"
    
    
}


/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    AGGIORNA DINAMICAMENTE LA % DI LEZIONE RAGGIUNTA

/***************************************************************************************************************************/
/***************************************************************************************************************************/


function fmy_updateHeightPassaggio ( g_percentualeCorso ) {
  //  percent = $( ".center_passaggio .percentage span" ).text();
    percent = g_percentualeCorso ;
    if ( _debug ) { 
        console.log ( "Percentuale --->" ,percent, "%" );
    }
    maxHeight = $( ".center_passaggio .bkg_categoria" ).height();
    val = ( maxHeight / 100 ) * percent;
    $( "#bar_passaggio" ).height( val );
}

/***************************************************************************************************************************/
/***************************************************************************************************************************/

//                                    DOCUMENT READY

/***************************************************************************************************************************/
/***************************************************************************************************************************/

$(document).ready(function(){
   
    calculateHeight();
   
    calculateURL();
    
    //questo valore deve essere scritto dal back-end
    setCorso(3);
   
    riempiContenutiLezione( "json/getLezioneInfo_3_1.json" );
    //riempiContenutiMateriali();
    riempiTabDomande( "json/getDomande_3_105.json" );
    fmy_addDomanda();
    riempiTabNote( "json/getNote_3_105.json" );  
    fmy_addNota();
    
    
    //animazione della tab nella lezione di fuizione lezione
    animateTabsLesson();    
 
    //sliding fra le diverse lezioni di un corso
    fmy_animateSlide();
    
    
}); /* end document ready */

